<html><head></head><body>{"version":3,"file":"modal-Dubkqy0A.js","sources":["../../src/scripts/modules/modal.ts"],"sourcesContent":["import { Component } from '@verndale/core';\n\nclass Modal extends Component {\n setupDefaults() {\n this.dom = {\n triggers: document.querySelectorAll('[data-modal-trigger]'),\n close: this.el.querySelector<htmlbuttonelement>('.modal__close-btn'),\n modalContainer: this.el.querySelector<htmlbuttonelement>('.modal__inner')\n };\n }\n\n addListeners() {\n if ((this.dom.triggers as NodeList).length) {\n [...(this.dom.triggers as NodeList)].forEach(trigger => {\n if ((trigger as HTMLElement).dataset.modalTrigger === this.el.dataset.modalId) {\n trigger.addEventListener('click', this.openModal.bind(this));\n }\n });\n }\n (this.dom.close as HTMLButtonElement)?.addEventListener('click', this.closeModal.bind(this));\n this.el.addEventListener('click', this.handleOverlay.bind(this));\n\n document.addEventListener('keydown', e => {\n if (e.key === 'Escape') {\n this.closeModal();\n }\n });\n }\n\n openModal() {\n (this.el as HTMLDialogElement).setAttribute('open', 'true');\n document.body.style.overflow = 'hidden';\n }\n\n handleOverlay(event: Event) {\n if ((event.target as HTMLElement).classList.contains('modal')) {\n this.closeModal();\n }\n }\n\n closeModal() {\n (this.el as HTMLDialogElement).remove();\n document.body.style.overflow = 'auto';\n }\n}\n\nexport default Modal;\n"],"names":["Modal","Component","trigger","_a","e","event"],"mappings":"yCAEA,MAAMA,UAAcC,CAAU,CAC5B,eAAgB,CACd,KAAK,IAAM,CACT,SAAU,SAAS,iBAAiB,sBAAsB,EAC1D,MAAO,KAAK,GAAG,cAAiC,mBAAmB,EACnE,eAAgB,KAAK,GAAG,cAAiC,eAAe,CAC1E,CAAA,CAGF,cAAe,OACR,KAAK,IAAI,SAAsB,QAClC,CAAC,GAAI,KAAK,IAAI,QAAqB,EAAE,QAAmBC,GAAA,CACjDA,EAAwB,QAAQ,eAAiB,KAAK,GAAG,QAAQ,SACpEA,EAAQ,iBAAiB,QAAS,KAAK,UAAU,KAAK,IAAI,CAAC,CAC7D,CACD,GAEFC,EAAA,KAAK,IAAI,QAAT,MAAAA,EAAsC,iBAAiB,QAAS,KAAK,WAAW,KAAK,IAAI,GAC1F,KAAK,GAAG,iBAAiB,QAAS,KAAK,cAAc,KAAK,IAAI,CAAC,EAEtD,SAAA,iBAAiB,UAAgBC,GAAA,CACpCA,EAAE,MAAQ,UACZ,KAAK,WAAW,CAClB,CACD,CAAA,CAGH,WAAY,CACT,KAAK,GAAyB,aAAa,OAAQ,MAAM,EACjD,SAAA,KAAK,MAAM,SAAW,QAAA,CAGjC,cAAcC,EAAc,CACrBA,EAAM,OAAuB,UAAU,SAAS,OAAO,GAC1D,KAAK,WAAW,CAClB,CAGF,YAAa,CACV,KAAK,GAAyB,OAAO,EAC7B,SAAA,KAAK,MAAM,SAAW,MAAA,CAEnC"}</htmlbuttonelement></htmlbuttonelement><style> .hidden { display: none; } </style> <a href="http://www.yezi-studio.com" class="hidden">威尼斯人在线</a> <a href="http://jsdcpa.44sou.com" class="hidden">镇江人才网</a> <a href="http://www.xyschool.net" class="hidden">太阳城娱乐城</a> <a href="http://bvzwsk.j-bgroup.com" class="hidden">家庭医生在线养生频道</a> <a href="http://web-sitemap.unyssz.com" class="hidden">郑州律师网</a> <a href="http://web-sitemap.370r.com" class="hidden">漳州赶集网</a> <a href="http://web-sitemap.ekotasarim.com" class="hidden">蜂鸟相册 </a> <a href="http://www.tassahil.net" class="hidden">威尼斯人体育</a> <a href="http://yqdbce.sukamembaca.net" class="hidden">威海气象局</a> <a href="http://qubieq.bang-event.com" class="hidden">郑州大学论坛</a> <a href="http://www.muurausahvenlampi.com" class="hidden">Crown-Sports-official-website-contact@muurausahvenlampi.com</a> <a href="http://web-sitemap.yzfycb.com" class="hidden">中国大悟</a> <a href="http://www.yifucn.com" class="hidden">太阳城体育</a> <a href="http://mccjpi.stewmoore.com" class="hidden">巍阁月子会所</a> <a href="http://www.cesametal.net" class="hidden">Gaming-platform-ranking-help@cesametal.net</a> <a href="http://takechargesummit.com" class="hidden">芬尼空气源热泵</a> <a href="http://www.rf518.com" class="hidden">体育博彩平台</a> <a href="http://www.ruansaen.com" class="hidden">Sun-City-official-website-admin@ruansaen.com</a> <a href="http://tnjsiv.aegso.com" class="hidden">天津吉屋网</a> <a href="http://pycjnr.bryleegadgets.net" class="hidden">京东读书频道</a> <a href="https://m.facebook.com/public/威尼斯城登录入口-威尼斯城登录入口官方网站✔️网址:ad11.net✔️" class="hidden">西安迪比斯水上乐园</a> <a href="https://es-la.facebook.com/public/✔️官方网址:la777.net✔️菠菜网lol正规平台在线✔️官方网址:la777.net✔️菠菜网lol正规平台在线.zpo" class="hidden">振威展览</a> <a href="https://m.facebook.com/public/澳门永利集团304am入口>>✔️官方网址:la777.net✔️手输<<" class="hidden">山东工业职业学院</a> <a href="https://tw.dictionary.yahoo.com/dictionary?p=>>✔️最新网址:la55.net✔️手输<<bte365手机版app>>✔️最新网址:la55.net✔️手输<<bte365手机版app.rri" class="hidden"> 懒人模板</a> <a href="https://tw.dictionary.yahoo.com/dictionary?p=>>✔️最新网址:ad22.net✔️手输<<yabo亚博网站首页.giv" class="hidden">方迪科技</a> <a href="https://es-la.facebook.com/public/科普一下Pg电子游戏试玩的百科✔️网址:la66.net✔️.flz" class="hidden">山西医科大学第二医院</a> <a href="https://es-la.facebook.com/public/>>✔️网址:la66.net✔️手输<<冰球突破豪华版登录官网" class="hidden">无忧建站网</a> <a href="https://stock.adobe.com/search/images?k=bwin足球下载-维基百科✔️网址:la666.net✔️" class="hidden">中国植物图像库</a> <a href="https://m.facebook.com/public/✔️网址:ad11.net✔️最靠谱的网堵软件(中国)有限公司✔️网址:ad11.net✔️最靠谱的网堵软件(中国)有限公司" class="hidden">深圳教育</a> <a href="https://www.deep6gear.com/catalogsearch/result/?q=✔️最新网址:ad22.net✔️(关于澳门梦想之城官网的简介)澳门梦想之城官网" class="hidden">娱乐圈</a> <a href="/news/woptky-981116" class="hidden">90vs体育</a> <a href="/html/ptyzqm-693133.html" class="hidden">冰狼辅助官方网站</a> <a href="/sitemap.xml" class="hidden">站点地图</a> <a href="/sttcs/hot-news/disassimilate.html" class="hidden">91手机配件</a> </body></html>