{"version":3,"sources":["webpack://@verndale/toolkit/./src/js/modules/shareModule.ts"],"names":["ShareModule","Component","el","__publicField","svg","_a","clone","option","service","url","winTop","winLeft"],"mappings":"yUAEA,MAAMA,UAAoBC,WAAU,CAGlC,YAAYC,EAAiB,CAC3B,MAAMA,CAAE,EAHVC,EAAA,YAIE,KAAK,IAAM,OAAO,SAAS,IAC7B,CAEA,eAAgB,CACd,KAAK,IAAM,CACT,SAAU,KAAK,GAAG,iBAChB,gCACF,EACA,QAAS,KAAK,GAAG,iBAA8B,gBAAgB,CACjE,EAEA,CAAC,EAAE,QAAQ,KAAK,KAAK,IAAI,SAAUC,GAAO,CAlB9C,IAAAC,EAmBM,MAAMC,EAASF,EAAa,UAAU,EAAI,EAC1CE,EAAM,gBAAgB,IAAI,GACzBD,EAAAD,EAAoB,aAApB,MAAAC,EAAgC,YAAYC,EAC/C,CAAC,CACH,CAEA,cAAe,CACZ,KAAK,IAAI,QAA0C,QAAQC,GAAU,CACpEA,EAAO,iBAAiB,QAAS,KAAK,kBAAkB,KAAK,IAAI,CAAC,CACpE,CAAC,CACH,CAEA,kBAAkB,EAAU,CAE1B,MAAMC,EADS,EAAE,cACM,QAAQ,QAE/B,QAAQ,IAAIA,CAAO,EAEfA,GACF,KAAK,MAAMA,CAAO,CAEtB,CAEA,MAAMA,EAAiB,CACrB,OAAQA,EAAS,CACf,IAAK,WACH,KAAK,UAAU,wCAAwC,KAAK,KAAK,EACjE,MACF,IAAK,IACH,KAAK,UAAU,iCAAiC,KAAK,KAAK,EAC1D,MACF,IAAK,WACH,KAAK,UACH,uDAAuD,KAAK,KAC9D,EACA,MACF,IAAK,QACH,KAAK,UAAU,gBAAgB,OAAO,SAAS,MAAM,EACrD,MACF,QACE,KACJ,CACF,CAEA,UAAUC,EAAa,CACrB,MAAMC,EAAS,OAAO,YAAc,EAAI,IAClCC,EAAU,OAAO,WAAa,EAAI,IAExC,OAAO,KACLF,EACA,SACA,OAAOC,WAAgBC,yCACzB,CACF,CACF,CAEA,QAAeX,C","file":"scripts/9074.616f4259a7a93b1b8e17.js","sourcesContent":["import { Component } from '@verndale/core';\n\nclass ShareModule extends Component {\n url: string;\n\n constructor(el: HTMLElement) {\n super(el);\n this.url = window.location.href;\n }\n\n setupDefaults() {\n this.dom = {\n svgIcons: this.el.querySelectorAll(\n '.share-module__icon-button svg'\n ),\n options: this.el.querySelectorAll('[data-service]')\n };\n\n [].forEach.call(this.dom.svgIcons, svg => {\n const clone = (svg as Node).cloneNode(true) as HTMLElement;\n clone.removeAttribute('id');\n (svg as HTMLElement).parentNode?.appendChild(clone);\n });\n }\n\n addListeners() {\n (this.dom.options as NodeListOf).forEach(option => {\n option.addEventListener('click', this.handleOptionClick.bind(this));\n });\n }\n\n handleOptionClick(e: Event) {\n const target = e.currentTarget as HTMLElement;\n const service = target.dataset.service;\n\n console.log(service);\n\n if (service) {\n this.share(service);\n }\n }\n\n share(service: string) {\n switch (service) {\n case 'facebook':\n this.openModal(`https://www.facebook.com/share.php?u=${this.url}`);\n break;\n case 'x':\n this.openModal(`https://twitter.com/share?url=${this.url}`);\n break;\n case 'linkedin':\n this.openModal(\n `https://www.linkedin.com/sharing/share-offsite/?url=${this.url}`\n );\n break;\n case 'email':\n this.openModal(`mailto:?body=${window.location.href}`);\n break;\n default:\n break;\n }\n }\n\n openModal(url: string) {\n const winTop = window.innerHeight / 3 - 200;\n const winLeft = window.innerWidth / 2 - 300;\n\n window.open(\n url,\n 'sharer',\n `top=${winTop}, left=${winLeft}, width=600, height=400, scrollbars=no`\n );\n }\n}\n\nexport default ShareModule;\n"],"sourceRoot":""}