diff --git a/dist/mailgo.min.js b/dist/mailgo.min.js index 7d123e1..6d0e709 100644 --- a/dist/mailgo.min.js +++ b/dist/mailgo.min.js @@ -1 +1 @@ -!function(e){var t={};function a(o){if(t[o])return t[o].exports;var n=t[o]={i:o,l:!1,exports:{}};return e[o].call(n.exports,n,n.exports,a),n.l=!0,n.exports}a.m=e,a.c=t,a.d=function(e,t,o){a.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:o})},a.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},a.t=function(e,t){if(1&t&&(e=a(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(a.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)a.d(o,n,function(t){return e[t]}.bind(null,n));return o},a.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return a.d(t,"a",t),t},a.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},a.p="",a(a.s=4)}([function(e){e.exports=JSON.parse('{"languages":["en","it"],"translations":{"en":{"open_in":"open in ","cc_":"cc ","bcc_":"bcc ","subject_":"subject ","body_":"body ","gmail":"Gmail","outlook":"Outlook","telegram":"Telegram","whatsapp":"WhatsApp","skype":"Skype","call":"call","open":"open","_default":" default","_as_default":" as default","copy":"copy"},"it":{"open_in":"apri con ","cc":"cc ","bcc":"ccn ","subject":"oggetto ","body":"testo ","gmail":"Gmail","outlook":"Outlook","telegram":"Telegram","whatsapp":"WhatsApp","skype":"Skype","call":"chiama","open":"apri","_default":" ","_as_default":" ","copy":"copia"}}}')},function(e,t,a){var o=a(2);e.exports="string"==typeof o?o:o.toString()},function(e,t,a){(t=a(3)(!1)).push([e.i,'.m-modal{position:fixed;top:0;right:0;bottom:0;left:0;justify-content:center;align-items:center;flex-direction:column;overflow:hidden;font-size:15px;z-index:10000}.m-modal p,.m-modal span,.m-modal strong,.m-modal a{margin:0;padding:0;font-size:100%;line-height:1;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";text-rendering:optimizeLegibility}.m-modal strong{font-weight:700}.m-modal .m-modal-back{position:absolute;z-index:10001;top:0;right:0;bottom:0;left:0;background-color:rgba(32,35,42,0.75);opacity:0.8}.m-modal .m-modal-content{position:relative;z-index:10002;box-sizing:content-box;text-align:center;min-width:200px;max-width:240px;background-color:#fff;opacity:0.97;border-radius:8px;box-shadow:0px 3px 20px rgba(32,35,42,0.5);color:#4a4a4a;display:flex;flex-direction:column;overflow:auto;padding:20px;transition:0.5s box-shadow}.m-modal .m-modal-content:hover{opacity:1;box-shadow:0px 7px 20px rgba(32,35,42,0.85)}.m-modal .m-modal-content .m-title{margin-bottom:8px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.m-modal .m-modal-content .m-details{margin-bottom:10px}.m-modal .m-modal-content .m-details p{font-size:12px;margin-top:3px;margin-bottom:3px}.m-modal .m-modal-content a{padding:10px;color:#4a4a4a;border-radius:8px;text-decoration:none}.m-modal .m-modal-content a.m-gmail{color:#d44638}.m-modal .m-modal-content a.m-gmail:hover{background-color:rgba(212,70,56,0.08);color:#d44638}.m-modal .m-modal-content a.m-outlook{color:#0072c6}.m-modal .m-modal-content a.m-outlook:hover{background-color:rgba(0,114,198,0.08);color:#0072c6}.m-modal .m-modal-content a.m-tg{color:#08c}.m-modal .m-modal-content a.m-tg:hover{background-color:rgba(0,114,198,0.08);color:#08c}.m-modal .m-modal-content a.m-wa{color:#00bfa5}.m-modal .m-modal-content a.m-wa:hover{background-color:rgba(0,191,165,0.08);color:#00bfa5}.m-modal .m-modal-content a.m-skype{color:#00aff0}.m-modal .m-modal-content a.m-skype:hover{background-color:rgba(0,175,240,0.08);color:#00aff0}.m-modal .m-modal-content a.m-copy{padding:16px 10px;font-size:16px}.m-modal .m-modal-content a.m-default:hover,.m-modal .m-modal-content a.m-copy:hover{background-color:rgba(0,0,0,0.08);color:#4a4a4a}.m-modal .m-modal-content a.m-by{font-size:8px;margin-top:0.8rem;padding:5px;color:#4a4a4a;opacity:0.5}.m-modal .m-modal-content a.m-by:hover{opacity:1}.m-modal .m-modal-content .w-500{font-weight:500}\n',""]),e.exports=t},function(e,t,a){"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var a=function(e,t){var a=e[1]||"",o=e[3];if(!o)return a;if(t&&"function"==typeof btoa){var n=(d=o,i=btoa(unescape(encodeURIComponent(JSON.stringify(d)))),c="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(i),"/*# ".concat(c," */")),l=o.sources.map((function(e){return"/*# sourceURL=".concat(o.sourceRoot||"").concat(e," */")}));return[a].concat(l).concat([n]).join("\n")}var d,i,c;return[a].join("\n")}(t,e);return t[2]?"@media ".concat(t[2]," {").concat(a,"}"):a})).join("")},t.i=function(e,a,o){"string"==typeof e&&(e=[[null,e,""]]);var n={};if(o)for(var l=0;l{let t="en",a=o.translations;(null==e?void 0:e.defaultLang)&&o.languages.includes(e.defaultLang)&&(t=e.defaultLang),!(null==e?void 0:e.forceLang)&&document.documentElement.lang&&(t=document.documentElement.lang);let n=a.en,i=a[t];{let e=ee();e.style.display="none",e.id="mailgo",e.classList.add("m-modal");let t=ee();t.className="m-modal-back",e.appendChild(t);let a=ee();a.className="m-modal-content",e.appendChild(a),c=ee("strong"),c.id="m-title",c.className="m-title",a.appendChild(c);let o=ee();o.id="m-details",o.className="m-details",m=ee("p"),m.id="m-cc";let s=ee(d);s.className="w-500",s.appendChild(te(i.cc||n.cc)),h=ee(d),h.id="m-cc-value",m.appendChild(s),m.appendChild(h),o.appendChild(m),p=ee("p"),p.id="m-bcc";let k=ee(d);k.className="w-500",k.appendChild(te(i.bcc||n.bcc)),g=ee(d),g.id="m-bcc-value",p.appendChild(k),p.appendChild(g),o.appendChild(p),r=ee("p"),r.id="m-subject";let v=ee(d);v.className="w-500",v.appendChild(te(i.subject||n.subject)),f=ee(d),f.id="m-subject-value",r.appendChild(v),r.appendChild(f),o.appendChild(r),u=ee("p"),u.id="m-body";let L=ee(d);L.className="w-500",L.appendChild(te(i.body||n.body)),b=ee(d),b.id="m-body-value",u.appendChild(L),u.appendChild(b),o.appendChild(u),a.appendChild(o),y=ee("a"),y.id="m-gmail",y.href=l,y.classList.add("m-open"),y.classList.add("m-gmail"),y.appendChild(te(i.open_in||n.open_in));let x=ee(d);x.className="w-500",x.appendChild(te(i.gmail||n.gmail)),y.appendChild(x),a.appendChild(y),C=ee("a"),C.id="m-outlook",C.href=l,C.classList.add("m-open"),C.classList.add("m-outlook"),C.appendChild(te(i.open_in||n.open_in));let j=ee(d);j.className="w-500",j.appendChild(te(i.outlook||n.outlook)),C.appendChild(j),a.appendChild(C),w=ee("a"),w.id="m-open",w.href=l,w.classList.add("m-open"),w.classList.add("m-default");let A=ee(d);A.className="w-500",A.appendChild(te(i.open||n.open)),w.appendChild(A),w.appendChild(te(i._default||n._default)),a.appendChild(w),_=ee("a"),_.id="m-copy",_.href=l,_.classList.add("m-copy"),_.classList.add("w-500"),_.appendChild(te(i.copy||n.copy)),a.appendChild(_),a.appendChild(Y()),document.body.appendChild(e),t.addEventListener("click",V)}{let e=ee();e.style.display="none",e.id="mailgo-tel",e.classList.add("m-modal");let t=ee();t.className="m-modal-back",e.appendChild(t);let a=ee();a.className="m-modal-content",e.appendChild(a),s=ee("strong"),s.id="m-tel-title",s.className="m-title",a.appendChild(s),k=ee("a"),k.id="m-tg",k.href=l,k.classList.add("m-open"),k.classList.add("m-tg"),k.style.display="none",k.appendChild(te(i.open_in||n.open_in));let o=ee(d);o.className="w-500",o.appendChild(te(i.telegram||n.telegram)),k.appendChild(o),a.appendChild(k),v=ee("a"),v.id="m-wa",v.href=l,v.classList.add("m-open"),v.classList.add("m-wa"),v.appendChild(te(i.open_in||n.open_in));let c=ee(d);c.className="w-500",c.appendChild(te(i.whatsapp||n.whatsapp)),v.appendChild(c),a.appendChild(v),L=ee("a"),L.id="m-skype",L.href=l,L.classList.add("m-open"),L.classList.add("m-skype"),L.appendChild(te(i.open_in||n.open_in));let m=ee(d);m.className="w-500",m.appendChild(te(i.skype||n.skype)),L.appendChild(m),a.appendChild(L),x=ee("a"),x.id="m-call",x.href=l,x.classList.add("m-open"),x.classList.add("m-default");let p=ee(d);p.className="w-500",p.appendChild(te(i.call||n.call)),x.appendChild(p),x.appendChild(te(i._as_default||n._as_default)),a.appendChild(x),j=ee("a"),j.id="m-tel-copy",j.href=l,j.classList.add("m-copy"),j.classList.add("w-500"),j.appendChild(te(i.copy||n.copy)),a.appendChild(j),a.appendChild(Y()),document.body.appendChild(e),t.addEventListener("click",V)}document.addEventListener("click",q)},W=(e="mail",t)=>{if("mail"===e){if(t.href&&t.href.toLowerCase().startsWith("mailto:")){A=decodeURIComponent(t.href.split("?")[0].split("mailto:")[1].trim()),i=new URL(t.href);let e=i.searchParams;N=e.get("cc"),S=e.get("bcc"),R=e.get("subject"),U=e.get("body")}else A=t.getAttribute("data-address")+"@"+t.getAttribute("data-domain"),i=new URL("mailto:"+encodeURIComponent(A)),N=t.getAttribute("data-cc-address")+"@"+t.getAttribute("data-cc-domain"),S=t.getAttribute("data-bcc-address")+"@"+t.getAttribute("data-bcc-domain"),R=t.getAttribute("data-subject"),U=t.getAttribute("data-body");if(!se(A.split(",")))return;N&&!se(N.split(","))&&(N=""),S&&!se(S.split(","))&&(S=""),c.innerHTML=A.split(",").join("
"),N?(m.style.display="block",h.innerHTML=N.split(",").join("
")):m.style.display="none",S?(p.style.display="block",g.innerHTML=S.split(",").join("
")):p.style.display="none",R?(r.style.display="block",f.textContent=R):r.style.display="none",U?(u.style.display="block",b.textContent=U):u.style.display="none",y.addEventListener("click",P),C.addEventListener("click",H),E=oe(A),w.addEventListener("click",D),_.addEventListener("click",()=>F(A))}"tel"===e&&(t.href&&t.href.toLowerCase().startsWith("tel:")?I=decodeURIComponent(t.href.split("?")[0].split("tel:")[1].trim()):t.href&&t.href.toLowerCase().startsWith("callto:")?I=decodeURIComponent(t.href.split("?")[0].split("callto:")[1].trim()):t.hasAttribute("data-tel")&&(I=t.getAttribute("data-tel"),M=t.getAttribute("data-msg")),t.hasAttribute("data-telegram")&&(z=t.getAttribute("data-telegram")),t.hasAttribute("data-skype")&&(O=t.getAttribute("data-skype")),s.innerHTML=I,v.addEventListener("click",J),z&&(de("m-tg","block"),k.addEventListener("click",B)),L.addEventListener("click",G),x.addEventListener("click",Z),j.addEventListener("click",()=>F(I))),Q(e),document.addEventListener("keydown",K)},P=()=>{let e="https://mail.google.com/mail/u/0/?view=cm&source=mailto&to="+encodeURIComponent(A);N&&(e=e.concat("&cc="+encodeURIComponent(N))),S&&(e=e.concat("&bcc="+encodeURIComponent(S))),R&&(e=e.concat("&subject="+R)),U&&(e=e.concat("&body="+U)),window.open(e,"_blank"),V()},H=()=>{let e="https://outlook.live.com/owa/?path=/mail/action/compose&to="+encodeURIComponent(A);R&&(e=e.concat("&subject="+R)),U&&(e=e.concat("&body="+U)),window.open(e,"_blank"),V()},D=()=>{ae(E),V()},B=()=>{let e="https://t.me/"+z;window.open(e,"_blank"),V()},G=()=>{let e="skype:"+(""!==O?O:I);window.open(e,"_blank"),V()},J=()=>{let e="https://wa.me/"+I;window.open(e,"_blank"),V()},Z=()=>{let e="tel:"+I;window.open(e),V()},F=e=>{let t;me(e),t=X("mail")?_:j,t.textContent="copied",setTimeout(()=>{t.textContent="copy",V()},999)},$=(e,t="mail")=>{let a=e.href;return"mail"===t?a&&a.toLowerCase().startsWith("mailto:")&&!e.classList.contains("no-mailgo")||e.hasAttribute("data-address")&&(a&&"#mailgo"===e.getAttribute("href").toLowerCase()||e.classList&&e.classList.contains("mailgo")):"tel"===t&&(a&&(a.toLowerCase().startsWith("tel:")||a.toLowerCase().startsWith("callto:"))&&!e.classList.contains("no-mailgo")||e.hasAttribute("data-tel")&&a&&"#mailgo"===e.getAttribute("href").toLowerCase()||e.classList&&e.classList.contains("mailgo"))},q=e=>{if(!document.contains(ne("mailgo"))||!document.contains(ne("mailgo-tel")))return;if(X("mail")||X("tel"))return!1;let t=e.composedPath&&e.composedPath()||ie(e.target);return t&&t.forEach(t=>!(t instanceof HTMLDocument||t instanceof Window)&&($(t,"mail")?(e.preventDefault(),W("mail",t),!0):$(t,"tel")?(e.preventDefault(),W("tel",t),!0):void 0)),!1},K=e=>{if(X("mail"))switch(e.keyCode){case 27:V();break;case 71:P();break;case 79:H();break;case 32:case 13:D();break;case 67:F(A);break;default:return}else if(X("tel"))switch(e.keyCode){case 27:V();break;case 84:B();break;case 87:J();break;case 32:case 13:Z();break;case 67:F(I);break;default:return}},Q=(e="mail")=>"mail"===e?(de("mailgo","flex"),!0):"tel"===e&&(de("mailgo-tel","flex"),!0),V=()=>{de("mailgo","none"),de("mailgo-tel","none"),document.removeEventListener("keydown",K)},X=(e="mail")=>"mail"===e?"flex"===le("mailgo"):"tel"===e&&"flex"===le("mailgo-tel"),Y=()=>{let e=ee("a");return e.href="https://mailgo.js.org?ref=mailgo-modal",e.className="m-by",e.target="_blank",e.rel="noopener noreferrer",e.appendChild(te("mailgo.js.org")),e},ee=(e="div")=>document.createElement(e),te=e=>document.createTextNode(e),ae=e=>window.location.href="mailto:"+atob(e),oe=e=>btoa(e),ne=e=>document.getElementById(e),le=e=>ne(e).style.display,de=(e,t)=>ne(e).style.display=t,ie=e=>{let t=[];for(;e;){if(t.push(e),"HTML"===e.tagName)return t.push(document),t.push(window),t;e=e.parentElement}},ce=e=>/^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/.test(e),se=e=>e.every(ce),me=e=>{let t=ee("textarea");t.value=e,t.setAttribute("readonly",""),t.style.position="absolute",t.style.left="-9999px",document.body.appendChild(t);let a=document.getSelection().rangeCount>0&&document.getSelection().getRangeAt(0);return t.select(),document.execCommand("copy"),document.body.removeChild(t),!!a&&(document.getSelection().removeAllRanges(),document.getSelection().addRange(a),!0)};var pe=e=>{window&&"undefined"!=typeof window&&((()=>{let e=ee("style");e.id="mailgo-style",e.type="text/css",e.appendChild(te(n)),document.head.appendChild(e)})(),(null==e?void 0:e.initEvent)?document.addEventListener(e.initEvent,()=>{T(e)}):T(e))};pe({initEvent:"DOMContentLoaded"})}]); \ No newline at end of file +window.mailgo=function(e){var t={};function a(o){if(t[o])return t[o].exports;var n=t[o]={i:o,l:!1,exports:{}};return e[o].call(n.exports,n,n.exports,a),n.l=!0,n.exports}return a.m=e,a.c=t,a.d=function(e,t,o){a.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:o})},a.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},a.t=function(e,t){if(1&t&&(e=a(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(a.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)a.d(o,n,function(t){return e[t]}.bind(null,n));return o},a.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return a.d(t,"a",t),t},a.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},a.p="",a(a.s=4)}([function(e){e.exports=JSON.parse('{"languages":["en","it"],"translations":{"en":{"open_in":"open in ","cc_":"cc ","bcc_":"bcc ","subject_":"subject ","body_":"body ","gmail":"Gmail","outlook":"Outlook","telegram":"Telegram","whatsapp":"WhatsApp","skype":"Skype","call":"call","open":"open","_default":" default","_as_default":" as default","copy":"copy"},"it":{"open_in":"apri con ","cc":"cc ","bcc":"ccn ","subject":"oggetto ","body":"testo ","gmail":"Gmail","outlook":"Outlook","telegram":"Telegram","whatsapp":"WhatsApp","skype":"Skype","call":"chiama","open":"apri","_default":" ","_as_default":" ","copy":"copia"}}}')},function(e,t,a){var o=a(2);e.exports="string"==typeof o?o:o.toString()},function(e,t,a){(t=a(3)(!1)).push([e.i,'.m-modal{position:fixed;top:0;right:0;bottom:0;left:0;justify-content:center;align-items:center;flex-direction:column;overflow:hidden;font-size:15px;z-index:10000}.m-modal p,.m-modal span,.m-modal strong,.m-modal a{margin:0;padding:0;font-size:100%;line-height:1;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";text-rendering:optimizeLegibility}.m-modal strong{font-weight:700}.m-modal .m-modal-back{position:absolute;z-index:10001;top:0;right:0;bottom:0;left:0;background-color:rgba(32,35,42,0.75);opacity:0.8}.m-modal .m-modal-content{position:relative;z-index:10002;box-sizing:content-box;text-align:center;min-width:200px;max-width:240px;background-color:#fff;opacity:0.97;border-radius:8px;box-shadow:0px 3px 20px rgba(32,35,42,0.5);color:#4a4a4a;display:flex;flex-direction:column;overflow:auto;padding:20px;transition:0.5s box-shadow}.m-modal .m-modal-content:hover{opacity:1;box-shadow:0px 7px 20px rgba(32,35,42,0.85)}.m-modal .m-modal-content .m-title{margin-bottom:8px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.m-modal .m-modal-content .m-details{margin-bottom:10px}.m-modal .m-modal-content .m-details p{font-size:12px;margin-top:3px;margin-bottom:3px}.m-modal .m-modal-content a{padding:10px;color:#4a4a4a;border-radius:8px;text-decoration:none}.m-modal .m-modal-content a.m-gmail{color:#d44638}.m-modal .m-modal-content a.m-gmail:hover{background-color:rgba(212,70,56,0.08);color:#d44638}.m-modal .m-modal-content a.m-outlook{color:#0072c6}.m-modal .m-modal-content a.m-outlook:hover{background-color:rgba(0,114,198,0.08);color:#0072c6}.m-modal .m-modal-content a.m-tg{color:#08c}.m-modal .m-modal-content a.m-tg:hover{background-color:rgba(0,114,198,0.08);color:#08c}.m-modal .m-modal-content a.m-wa{color:#00bfa5}.m-modal .m-modal-content a.m-wa:hover{background-color:rgba(0,191,165,0.08);color:#00bfa5}.m-modal .m-modal-content a.m-skype{color:#00aff0}.m-modal .m-modal-content a.m-skype:hover{background-color:rgba(0,175,240,0.08);color:#00aff0}.m-modal .m-modal-content a.m-copy{padding:16px 10px;font-size:16px}.m-modal .m-modal-content a.m-default:hover,.m-modal .m-modal-content a.m-copy:hover{background-color:rgba(0,0,0,0.08);color:#4a4a4a}.m-modal .m-modal-content a.m-by{font-size:8px;margin-top:0.8rem;padding:5px;color:#4a4a4a;opacity:0.5}.m-modal .m-modal-content a.m-by:hover{opacity:1}.m-modal .m-modal-content .w-500{font-weight:500}\n',""]),e.exports=t},function(e,t,a){"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var a=function(e,t){var a=e[1]||"",o=e[3];if(!o)return a;if(t&&"function"==typeof btoa){var n=(d=o,i=btoa(unescape(encodeURIComponent(JSON.stringify(d)))),c="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(i),"/*# ".concat(c," */")),l=o.sources.map((function(e){return"/*# sourceURL=".concat(o.sourceRoot||"").concat(e," */")}));return[a].concat(l).concat([n]).join("\n")}var d,i,c;return[a].join("\n")}(t,e);return t[2]?"@media ".concat(t[2]," {").concat(a,"}"):a})).join("")},t.i=function(e,a,o){"string"==typeof e&&(e=[[null,e,""]]);var n={};if(o)for(var l=0;l{let t="en",a=o.translations;(null==e?void 0:e.defaultLang)&&o.languages.includes(e.defaultLang)&&(t=e.defaultLang),!(null==e?void 0:e.forceLang)&&document.documentElement.lang&&(t=document.documentElement.lang);let n=a.en,i=a[t];{let e=ee();e.style.display="none",e.id="mailgo",e.classList.add("m-modal");let t=ee();t.className="m-modal-back",e.appendChild(t);let a=ee();a.className="m-modal-content",e.appendChild(a),c=ee("strong"),c.id="m-title",c.className="m-title",a.appendChild(c);let o=ee();o.id="m-details",o.className="m-details",m=ee("p"),m.id="m-cc";let s=ee(d);s.className="w-500",s.appendChild(te(i.cc||n.cc)),h=ee(d),h.id="m-cc-value",m.appendChild(s),m.appendChild(h),o.appendChild(m),p=ee("p"),p.id="m-bcc";let k=ee(d);k.className="w-500",k.appendChild(te(i.bcc||n.bcc)),g=ee(d),g.id="m-bcc-value",p.appendChild(k),p.appendChild(g),o.appendChild(p),r=ee("p"),r.id="m-subject";let v=ee(d);v.className="w-500",v.appendChild(te(i.subject||n.subject)),f=ee(d),f.id="m-subject-value",r.appendChild(v),r.appendChild(f),o.appendChild(r),u=ee("p"),u.id="m-body";let L=ee(d);L.className="w-500",L.appendChild(te(i.body||n.body)),b=ee(d),b.id="m-body-value",u.appendChild(L),u.appendChild(b),o.appendChild(u),a.appendChild(o),y=ee("a"),y.id="m-gmail",y.href=l,y.classList.add("m-open"),y.classList.add("m-gmail"),y.appendChild(te(i.open_in||n.open_in));let x=ee(d);x.className="w-500",x.appendChild(te(i.gmail||n.gmail)),y.appendChild(x),a.appendChild(y),C=ee("a"),C.id="m-outlook",C.href=l,C.classList.add("m-open"),C.classList.add("m-outlook"),C.appendChild(te(i.open_in||n.open_in));let j=ee(d);j.className="w-500",j.appendChild(te(i.outlook||n.outlook)),C.appendChild(j),a.appendChild(C),w=ee("a"),w.id="m-open",w.href=l,w.classList.add("m-open"),w.classList.add("m-default");let A=ee(d);A.className="w-500",A.appendChild(te(i.open||n.open)),w.appendChild(A),w.appendChild(te(i._default||n._default)),a.appendChild(w),_=ee("a"),_.id="m-copy",_.href=l,_.classList.add("m-copy"),_.classList.add("w-500"),_.appendChild(te(i.copy||n.copy)),a.appendChild(_),a.appendChild(Y()),document.body.appendChild(e),t.addEventListener("click",V)}{let e=ee();e.style.display="none",e.id="mailgo-tel",e.classList.add("m-modal");let t=ee();t.className="m-modal-back",e.appendChild(t);let a=ee();a.className="m-modal-content",e.appendChild(a),s=ee("strong"),s.id="m-tel-title",s.className="m-title",a.appendChild(s),k=ee("a"),k.id="m-tg",k.href=l,k.classList.add("m-open"),k.classList.add("m-tg"),k.style.display="none",k.appendChild(te(i.open_in||n.open_in));let o=ee(d);o.className="w-500",o.appendChild(te(i.telegram||n.telegram)),k.appendChild(o),a.appendChild(k),v=ee("a"),v.id="m-wa",v.href=l,v.classList.add("m-open"),v.classList.add("m-wa"),v.appendChild(te(i.open_in||n.open_in));let c=ee(d);c.className="w-500",c.appendChild(te(i.whatsapp||n.whatsapp)),v.appendChild(c),a.appendChild(v),L=ee("a"),L.id="m-skype",L.href=l,L.classList.add("m-open"),L.classList.add("m-skype"),L.appendChild(te(i.open_in||n.open_in));let m=ee(d);m.className="w-500",m.appendChild(te(i.skype||n.skype)),L.appendChild(m),a.appendChild(L),x=ee("a"),x.id="m-call",x.href=l,x.classList.add("m-open"),x.classList.add("m-default");let p=ee(d);p.className="w-500",p.appendChild(te(i.call||n.call)),x.appendChild(p),x.appendChild(te(i._as_default||n._as_default)),a.appendChild(x),j=ee("a"),j.id="m-tel-copy",j.href=l,j.classList.add("m-copy"),j.classList.add("w-500"),j.appendChild(te(i.copy||n.copy)),a.appendChild(j),a.appendChild(Y()),document.body.appendChild(e),t.addEventListener("click",V)}document.addEventListener("click",q)},W=(e="mail",t)=>{if("mail"===e){if(t.href&&t.href.toLowerCase().startsWith("mailto:")){A=decodeURIComponent(t.href.split("?")[0].split("mailto:")[1].trim()),i=new URL(t.href);let e=i.searchParams;N=e.get("cc"),S=e.get("bcc"),R=e.get("subject"),U=e.get("body")}else A=t.getAttribute("data-address")+"@"+t.getAttribute("data-domain"),i=new URL("mailto:"+encodeURIComponent(A)),N=t.getAttribute("data-cc-address")+"@"+t.getAttribute("data-cc-domain"),S=t.getAttribute("data-bcc-address")+"@"+t.getAttribute("data-bcc-domain"),R=t.getAttribute("data-subject"),U=t.getAttribute("data-body");if(!se(A.split(",")))return;N&&!se(N.split(","))&&(N=""),S&&!se(S.split(","))&&(S=""),c.innerHTML=A.split(",").join("
"),N?(m.style.display="block",h.innerHTML=N.split(",").join("
")):m.style.display="none",S?(p.style.display="block",g.innerHTML=S.split(",").join("
")):p.style.display="none",R?(r.style.display="block",f.textContent=R):r.style.display="none",U?(u.style.display="block",b.textContent=U):u.style.display="none",y.addEventListener("click",P),C.addEventListener("click",H),E=oe(A),w.addEventListener("click",D),_.addEventListener("click",()=>F(A))}"tel"===e&&(t.href&&t.href.toLowerCase().startsWith("tel:")?I=decodeURIComponent(t.href.split("?")[0].split("tel:")[1].trim()):t.href&&t.href.toLowerCase().startsWith("callto:")?I=decodeURIComponent(t.href.split("?")[0].split("callto:")[1].trim()):t.hasAttribute("data-tel")&&(I=t.getAttribute("data-tel"),M=t.getAttribute("data-msg")),t.hasAttribute("data-telegram")&&(z=t.getAttribute("data-telegram")),t.hasAttribute("data-skype")&&(O=t.getAttribute("data-skype")),s.innerHTML=I,v.addEventListener("click",J),z&&(de("m-tg","block"),k.addEventListener("click",B)),L.addEventListener("click",G),x.addEventListener("click",Z),j.addEventListener("click",()=>F(I))),Q(e),document.addEventListener("keydown",K)},P=()=>{let e="https://mail.google.com/mail/u/0/?view=cm&source=mailto&to="+encodeURIComponent(A);N&&(e=e.concat("&cc="+encodeURIComponent(N))),S&&(e=e.concat("&bcc="+encodeURIComponent(S))),R&&(e=e.concat("&subject="+R)),U&&(e=e.concat("&body="+U)),window.open(e,"_blank"),V()},H=()=>{let e="https://outlook.live.com/owa/?path=/mail/action/compose&to="+encodeURIComponent(A);R&&(e=e.concat("&subject="+R)),U&&(e=e.concat("&body="+U)),window.open(e,"_blank"),V()},D=()=>{ae(E),V()},B=()=>{let e="https://t.me/"+z;window.open(e,"_blank"),V()},G=()=>{let e="skype:"+(""!==O?O:I);window.open(e,"_blank"),V()},J=()=>{let e="https://wa.me/"+I;window.open(e,"_blank"),V()},Z=()=>{let e="tel:"+I;window.open(e),V()},F=e=>{let t;me(e),t=X("mail")?_:j,t.textContent="copied",setTimeout(()=>{t.textContent="copy",V()},999)},$=(e,t="mail")=>{let a=e.href;return"mail"===t?a&&a.toLowerCase().startsWith("mailto:")&&!e.classList.contains("no-mailgo")||e.hasAttribute("data-address")&&(a&&"#mailgo"===e.getAttribute("href").toLowerCase()||e.classList&&e.classList.contains("mailgo")):"tel"===t&&(a&&(a.toLowerCase().startsWith("tel:")||a.toLowerCase().startsWith("callto:"))&&!e.classList.contains("no-mailgo")||e.hasAttribute("data-tel")&&a&&"#mailgo"===e.getAttribute("href").toLowerCase()||e.classList&&e.classList.contains("mailgo"))},q=e=>{if(!document.contains(ne("mailgo"))||!document.contains(ne("mailgo-tel")))return;if(X("mail")||X("tel"))return!1;let t=e.composedPath&&e.composedPath()||ie(e.target);return t&&t.forEach(t=>!(t instanceof HTMLDocument||t instanceof Window)&&($(t,"mail")?(e.preventDefault(),W("mail",t),!0):$(t,"tel")?(e.preventDefault(),W("tel",t),!0):void 0)),!1},K=e=>{if(X("mail"))switch(e.keyCode){case 27:V();break;case 71:P();break;case 79:H();break;case 32:case 13:D();break;case 67:F(A);break;default:return}else if(X("tel"))switch(e.keyCode){case 27:V();break;case 84:B();break;case 87:J();break;case 32:case 13:Z();break;case 67:F(I);break;default:return}},Q=(e="mail")=>"mail"===e?(de("mailgo","flex"),!0):"tel"===e&&(de("mailgo-tel","flex"),!0),V=()=>{de("mailgo","none"),de("mailgo-tel","none"),document.removeEventListener("keydown",K)},X=(e="mail")=>"mail"===e?"flex"===le("mailgo"):"tel"===e&&"flex"===le("mailgo-tel"),Y=()=>{let e=ee("a");return e.href="https://mailgo.js.org?ref=mailgo-modal",e.className="m-by",e.target="_blank",e.rel="noopener noreferrer",e.appendChild(te("mailgo.js.org")),e},ee=(e="div")=>document.createElement(e),te=e=>document.createTextNode(e),ae=e=>window.location.href="mailto:"+atob(e),oe=e=>btoa(e),ne=e=>document.getElementById(e),le=e=>ne(e).style.display,de=(e,t)=>ne(e).style.display=t,ie=e=>{let t=[];for(;e;){if(t.push(e),"HTML"===e.tagName)return t.push(document),t.push(window),t;e=e.parentElement}},ce=e=>/^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/.test(e),se=e=>e.every(ce),me=e=>{let t=ee("textarea");t.value=e,t.setAttribute("readonly",""),t.style.position="absolute",t.style.left="-9999px",document.body.appendChild(t);let a=document.getSelection().rangeCount>0&&document.getSelection().getRangeAt(0);return t.select(),document.execCommand("copy"),document.body.removeChild(t),!!a&&(document.getSelection().removeAllRanges(),document.getSelection().addRange(a),!0)};var pe=e=>{window&&"undefined"!=typeof window&&((()=>{let e=ee("style");e.id="mailgo-style",e.type="text/css",e.appendChild(te(n)),document.head.appendChild(e)})(),(null==e?void 0:e.initEvent)?document.addEventListener(e.initEvent,()=>{T(e)}):T(e))};pe({initEvent:"DOMContentLoaded"})}]); \ No newline at end of file diff --git a/lib/mailgo.js b/lib/mailgo.js index 33ffd8e..5663f9d 100644 --- a/lib/mailgo.js +++ b/lib/mailgo.js @@ -235,7 +235,7 @@ function toComment(sourceMap) { // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); -// CONCATENATED MODULE: ./mailgo.ts +// CONCATENATED MODULE: ../src/mailgo.ts // i18n for mailgo const i18n = __webpack_require__(0); // mailgo css @@ -941,12 +941,14 @@ const mailgo = (mailgoConfig) => { } } }; -/* harmony default export */ var mailgo_0 = (mailgo); +/* harmony default export */ var src_mailgo = (mailgo); // CONCATENATED MODULE: ./mailgo.lib.ts // webpack > lib/mailgo.js -/* harmony default export */ var mailgo_lib = __webpack_exports__["default"] = (mailgo_0); + + +/* harmony default export */ var mailgo_lib = __webpack_exports__["default"] = (src_mailgo); /***/ }) diff --git a/tsconfig.json b/tsconfig.json index ba9dd53..cc1d7ba 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -10,5 +10,5 @@ "moduleResolution": "node", "resolveJsonModule": true }, - "include": ["src"] + "include": ["src", "webpack/mailgo.lib.ts", "webpack/mailgo.dist.ts"] } diff --git a/webpack.config.js b/webpack.config.js index 965d461..c6aef6d 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -27,8 +27,8 @@ const mailgoRules = [ module.exports = [ { mode: "production", - entry: "./mailgo.webpack.ts", - context: path.join(__dirname, "src"), + entry: "./mailgo.dist.ts", + context: path.join(__dirname, "webpack"), module: { rules: mailgoRules, }, @@ -37,6 +37,8 @@ module.exports = [ }, output: { filename: "mailgo.min.js", + library: "mailgo", + libraryTarget: "window", path: path.resolve(__dirname, "dist"), }, }, @@ -44,7 +46,7 @@ module.exports = [ { mode: "production", entry: "./mailgo.lib.ts", - context: path.join(__dirname, "src"), + context: path.join(__dirname, "webpack"), module: { rules: mailgoRules, }, @@ -60,7 +62,6 @@ module.exports = [ libraryTarget: "umd", libraryExport: "default", globalObject: "typeof self !== 'undefined' ? self : this", - // auxiliaryComment: "mailgo", path: path.resolve(__dirname), }, }, diff --git a/src/mailgo.webpack.ts b/webpack/mailgo.dist.ts similarity index 82% rename from src/mailgo.webpack.ts rename to webpack/mailgo.dist.ts index 3b659d5..46d6b0d 100644 --- a/src/mailgo.webpack.ts +++ b/webpack/mailgo.dist.ts @@ -1,6 +1,6 @@ // webpack > dist/mailgo.min.js -import mailgo from "./mailgo"; +import mailgo from "../src/mailgo"; // call init mailgo attached to the event DOMContentLoaded const mailgoConfig = { diff --git a/src/mailgo.lib.ts b/webpack/mailgo.lib.ts similarity index 59% rename from src/mailgo.lib.ts rename to webpack/mailgo.lib.ts index 91f7d37..df16304 100644 --- a/src/mailgo.lib.ts +++ b/webpack/mailgo.lib.ts @@ -1,5 +1,5 @@ // webpack > lib/mailgo.js -import mailgo from "./mailgo"; +import mailgo from "../src/mailgo"; export default mailgo;