1 line
7.7 KiB
JavaScript
1 line
7.7 KiB
JavaScript
!function(e){var t={};function a(o){if(t[o])return t[o].exports;var l=t[o]={i:o,l:!1,exports:{}};return e[o].call(l.exports,l,l.exports,a),l.l=!0,l.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 l in e)a.d(o,l,function(t){return e[t]}.bind(null,l));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=0)}([function(e,t){const a=document.createElement("style");a.id="mailgo-style",a.type="text/css";const o=document.createTextNode("MAILGO_STYLE");a.appendChild(o),document.head.appendChild(a);const l={openGmail:e=>{let t="https://mail.google.com/mail?extsrc=mailto&url="+encodeURIComponent(e);window.open(t,"_blank")},openOutlook:(e,t,a)=>{let o="https://outlook.live.com/owa/?path=/mail/action/compose&to="+encodeURIComponent(e);t&&(o=o.concat("&subject="+t)),a&&(o=o.concat("&body="+a)),window.open(o,"_blank")},openDefault:e=>{p(e)},copy:(e,t)=>{i(e),t.textContent="copied",setTimeout(()=>t.textContent="copy",999)}},n=(e,t,a,o,n,d,i,c,p)=>{if(s())switch(event.keyCode){case 27:m();break;case 71:l.openGmail(i);break;case 79:l.openOutlook(e,o,n);break;case 32:case 13:l.openDefault(c);break;case 67:l.copy(e,p);break;default:return}};document.addEventListener("DOMContentLoaded",()=>{let e=document.createElement("div");e.id="mailgo",e.classList.add("mailgo-modal"),e.style.display="none";let t=document.createElement("div");t.className="mailgo-modal-background",e.appendChild(t);let a=document.createElement("div");a.className="mailgo-modal-content",e.appendChild(a);let o=document.createElement("strong");o.id="mailgo-title",o.className="mailgo-title",a.appendChild(o);let l=document.createElement("div");l.id="mailgo-details",l.className="mailgo-details";let n=document.createElement("p");n.id="mailgo-cc";let d=document.createElement("span");d.className="mailgo-weight-500";let i=document.createTextNode("cc ");d.appendChild(i);let c=document.createElement("span");c.id="mailgo-cc-value",n.appendChild(d),n.appendChild(c),l.appendChild(n);let s=document.createElement("p");s.id="mailgo-bcc";let p=document.createElement("span");p.className="mailgo-weight-500";let r=document.createTextNode("bcc ");p.appendChild(r);let u=document.createElement("span");u.id="mailgo-bcc-value",s.appendChild(p),s.appendChild(u),l.appendChild(s);let g=document.createElement("p");g.id="mailgo-subject";let h=document.createElement("span");h.className="mailgo-weight-500";let b=document.createTextNode("subject ");h.appendChild(b);let y=document.createElement("span");y.id="mailgo-subject-value",g.appendChild(h),g.appendChild(y),l.appendChild(g);let f=document.createElement("p");f.id="mailgo-body";let C=document.createElement("span");C.className="mailgo-weight-500";let E=document.createTextNode("body ");C.appendChild(E);let v=document.createElement("span");v.id="mailgo-body-value",f.appendChild(C),f.appendChild(v),l.appendChild(f),a.appendChild(l);let x=document.createElement("a");x.id="mailgo-gmail",x.href="#mailgo-gmail",x.classList.add("mailgo-open"),x.classList.add("mailgo-gmail");let k=document.createTextNode("open in ");x.appendChild(k);let L=document.createElement("span");L.className="mailgo-weight-500";let w=document.createTextNode("Gmail");L.appendChild(w),x.appendChild(L),a.appendChild(x);let N=document.createElement("a");N.id="mailgo-outlook",N.href="#mailgo-outlook",N.classList.add("mailgo-open"),N.classList.add("mailgo-outlook");let T=document.createTextNode("open in ");N.appendChild(T);let j=document.createElement("span");j.className="mailgo-weight-500";let A=document.createTextNode("Outlook");j.appendChild(A),N.appendChild(j),a.appendChild(N);let O=document.createElement("a");O.id="mailgo-open",O.href="#mailgo-open",O.classList.add("mailgo-open"),O.classList.add("mailgo-default");let S=document.createElement("span");S.className="mailgo-weight-500";let R=document.createTextNode("open");S.appendChild(R);let _=document.createTextNode(" default");O.appendChild(S),O.appendChild(_),a.appendChild(O);let P=document.createElement("a");P.id="mailgo-copy",P.href="#mailgo-copy",P.classList.add("mailgo-copy"),P.classList.add("mailgo-weight-500");let M=document.createTextNode("copy");P.appendChild(M),a.appendChild(P);let U=document.createElement("a");U.href="https://mailgo.js.org?ref=mailgo-modal",U.className="mailgo-by",U.target="_blank",U.rel="noopener noreferrer";let I=document.createTextNode("mailgo.js.org");U.appendChild(I),a.appendChild(U),document.body.appendChild(e),t.addEventListener("click",m)}),document.addEventListener("click",e=>{if(!document.contains(u("mailgo")))return;let t=e.path||e.composedPath&&e.composedPath()||g(e.target);t&&t.forEach(t=>{if((e=>e.href&&e.href.toLowerCase().startsWith("mailto:")&&!e.classList.contains("no-mailgo")||e.href&&"#mailgo"===e.getAttribute("href").toLowerCase()||e.classList&&e.classList.contains("mailgo"))(t))return e.preventDefault(),void(e=>{let t="",a="",o="",i="",m="",s="",p="";if(e.href&&e.href.toLowerCase().startsWith("mailto:")){t=decodeURIComponent(e.href.split("?")[0].split("mailto:")[1].trim()),o=e.href,a=new URL(o);let l=new URLSearchParams(a.search);i=l.get("cc"),m=l.get("bcc"),s=l.get("subject"),p=l.get("body")}else t=e.getAttribute("data-address")+"@"+e.getAttribute("data-domain"),o="mailto:"+encodeURIComponent(t),a=new URL(o),i=e.getAttribute("data-cc-address")+"@"+e.getAttribute("data-cc-domain"),m=e.getAttribute("data-bcc-address")+"@"+e.getAttribute("data-bcc-domain"),s=e.getAttribute("data-subject"),p=e.getAttribute("data-body");if(!d(t))return;d(i)||(i=""),d(m)||(m="");let g=u("mailgo-title"),h=(u("mailgo-details"),u("mailgo-cc")),b=u("mailgo-cc-value"),y=u("mailgo-bcc"),f=u("mailgo-bcc-value"),C=u("mailgo-subject"),E=u("mailgo-subject-value"),v=u("mailgo-body"),x=u("mailgo-body-value"),k=u("mailgo-gmail"),L=u("mailgo-outlook"),w=u("mailgo-open"),N=u("mailgo-copy");g.textContent=t,i?(h.style.display="block",b.textContent=i):h.style.display="none",m?(y.style.display="block",f.textContent=m):y.style.display="none",s?(C.style.display="block",E.textContent=s):C.style.display="none",p?(v.style.display="block",x.textContent=p):v.style.display="none",k.addEventListener("click",()=>l.openGmail(o)),L.addEventListener("click",()=>l.openOutlook(t,s,p));let T=r(t);w.addEventListener("click",()=>l.openDefault(T)),N.addEventListener("click",()=>l.copy(t,N)),c(),document.addEventListener("keydown",()=>n(t,i,m,s,p,a,o,T,N))})(t)})});const d=e=>{return/^(([^<>()[\]\\.,;:\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)},i=e=>{let t=document.createElement("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);t.select(),document.execCommand("copy"),document.body.removeChild(t),a&&(document.getSelection().removeAllRanges(),document.getSelection().addRange(a))},c=()=>u("mailgo").style.display="flex",m=()=>u("mailgo").style.display="none",s=()=>"flex"===u("mailgo").style.display,p=e=>window.location.href="mailto:"+atob(e),r=e=>btoa(e),u=e=>document.getElementById(e),g=e=>{let t=[];for(;e;){if(t.push(e),"HTML"===e.tagName)return t.push(document),t.push(window),t;e=e.parentElement}}}]); |