{"version":3,"file":"externalLinksModal-BDx7C6Fg.js","sources":["../../../../../src/scripts/modules/externalLinksModal.ts"],"sourcesContent":["import { Component } from '@verndale/core';\n\nclass ExternalLinksModal extends Component {\n internalUrls: string[];\n redirectUrl: string | null;\n\n constructor(el: HTMLDialogElement) {\n super(el);\n this.internalUrls = el.dataset.internalUrls?.split(',') as string[];\n this.redirectUrl = null;\n }\n\n setupDefaults() {\n this.dom = {\n closeButton: this.el.querySelector('.external-links-modal__close-button'),\n continueButton: this.el.querySelector('.external-links-modal__continue'),\n };\n\n const isPreview = this.el.closest('.storybook-preview');\n if (isPreview) {\n this.open();\n }\n }\n\n addListeners() {\n document.addEventListener('click', this.handleLinkClick.bind(this));\n (this.dom.closeButton as HTMLElement).addEventListener('click', this.handleCloseClick.bind(this));\n (this.dom.continueButton as HTMLElement).addEventListener('click', this.handleContinueClick.bind(this));\n }\n\n handleLinkClick(event: MouseEvent) {\n const target = (event.target as HTMLElement).closest('a');\n \n if (target?.classList.contains('external-links-modal__optional-link')) {\n return;\n }\n \n if (target && target.tagName === 'A' && target.href) {\n const isInternal = this.internalUrls.some((url) => target.href.includes(url));\n if (!isInternal) {\n event.preventDefault();\n this.redirectUrl = target.href;\n this.open();\n }\n }\n }\n\n handleContinueClick() {\n if (this.redirectUrl) {\n window.open(this.redirectUrl, '_blank');\n }\n }\n\n handleCloseClick() {\n this.close();\n }\n\n open() {\n (this.el as HTMLDialogElement).showModal();\n }\n\n close() {\n (this.el as HTMLDialogElement).close();\n }\n}\n\nexport default ExternalLinksModal;"],"names":["ExternalLinksModal","Component","el","__publicField","_a","event","target","url"],"mappings":"iNAEA,MAAMA,UAA2BC,CAAU,CAIzC,YAAYC,EAAuB,OACjC,MAAMA,CAAE,EAJVC,EAAA,qBACAA,EAAA,oBAIE,KAAK,cAAeC,EAAAF,EAAG,QAAQ,eAAX,YAAAE,EAAyB,MAAM,KACnD,KAAK,YAAc,IACrB,CAEA,eAAgB,CACd,KAAK,IAAM,CACT,YAAa,KAAK,GAAG,cAA2B,qCAAqC,EACrF,eAAgB,KAAK,GAAG,cAA2B,iCAAiC,CAAA,EAGpE,KAAK,GAAG,QAAQ,oBAAoB,GAEpD,KAAK,KAAK,CAEd,CAEA,cAAe,CACb,SAAS,iBAAiB,QAAS,KAAK,gBAAgB,KAAK,IAAI,CAAC,EACjE,KAAK,IAAI,YAA4B,iBAAiB,QAAS,KAAK,iBAAiB,KAAK,IAAI,CAAC,EAC/F,KAAK,IAAI,eAA+B,iBAAiB,QAAS,KAAK,oBAAoB,KAAK,IAAI,CAAC,CACxG,CAEA,gBAAgBC,EAAmB,CACjC,MAAMC,EAAUD,EAAM,OAAuB,QAAQ,GAAG,EAEpDC,GAAA,MAAAA,EAAQ,UAAU,SAAS,wCAI3BA,GAAUA,EAAO,UAAY,KAAOA,EAAO,OAC1B,KAAK,aAAa,KAAMC,GAAQD,EAAO,KAAK,SAASC,CAAG,CAAC,IAE1EF,EAAM,eAAe,EACrB,KAAK,YAAcC,EAAO,KAC1B,KAAK,KAAK,GAGhB,CAEA,qBAAsB,CAChB,KAAK,aACA,OAAA,KAAK,KAAK,YAAa,QAAQ,CAE1C,CAEA,kBAAmB,CACjB,KAAK,MAAM,CACb,CAEA,MAAO,CACJ,KAAK,GAAyB,WACjC,CAEA,OAAQ,CACL,KAAK,GAAyB,OACjC,CACF"}