mailymaily/mailgo.js
Matteo Manzinello ba07d032f1 css changes
2019-06-09 16:50:47 +02:00

1 line
10 KiB
JavaScript

!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.mailgo=t():e.mailgo=t()}(window,function(){return function(e){var t={};function o(a){if(t[a])return t[a].exports;var n=t[a]={i:a,l:!1,exports:{}};return e[a].call(n.exports,n,n.exports,o),n.l=!0,n.exports}return o.m=e,o.c=t,o.d=function(e,t,a){o.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:a})},o.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},o.t=function(e,t){if(1&t&&(e=o(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var a=Object.create(null);if(o.r(a),Object.defineProperty(a,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)o.d(a,n,function(t){return e[t]}.bind(null,n));return a},o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,"a",t),t},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.p="",o(o.s=0)}([function(e,t,o){"use strict";var a=document.createElement("style");a.id="mailgo-style",a.type="text/css";var n=document.createTextNode('.mailgo-modal a,.mailgo-modal p,.mailgo-modal span,.mailgo-modal strong{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"}.mailgo-modal strong{font-weight:700}.mailgo-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}.mailgo-title{display:block;margin-bottom:5px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.mailgo-details{margin-bottom:10px}.mailgo-details p{font-size:12px;margin-top:3px;margin-bottom:3px}.mailgo-modal-background{position:absolute;z-index:10001;top:0;right:0;bottom:0;left:0;background-color:rgba(32,35,42,.75);opacity:.8}.mailgo-modal-content{position:relative;z-index:10002;box-sizing:content-box;text-align:center;min-width:200px;max-width:240px;background-color:#fff;opacity:.97;border-radius:5px;box-shadow:0 3px 8px 0 rgba(32,35,42,.12);color:#4a4a4a;display:block;overflow:auto;padding:20px}.mailgo-modal-content:hover{opacity:1;box-shadow:0 18px 30px 0 rgba(32,35,42,.23)}.mailgo-modal-content a{display:block;padding:10px;color:#4a4a4a;border-radius:5px;text-decoration:none}.mailgo-modal-content a.mailgo-gmail{color:#d44638}.mailgo-modal-content a.mailgo-outlook{color:#0072c6}.mailgo-modal-content a.mailgo-copy{padding:16px 10px;font-size:16px}.mailgo-modal-content a.mailgo-copy:hover,.mailgo-modal-content a.mailgo-default:hover{background-color:rgba(0,0,0,.08);color:#4a4a4a}.mailgo-modal-content a.mailgo-outlook:hover{background-color:rgba(0,114,198,.08);color:#0072c6}.mailgo-modal-content a.mailgo-gmail:hover{background-color:rgba(212,70,56,.08);color:#d44638}.mailgo-modal-content a.mailgo-by{display:block;font-size:8px;margin-top:1rem;padding:0;color:#4a4a4a;opacity:.5}.mailgo-modal-content a.mailgo-by:hover{opacity:1}.mailgo-weight-500{font-weight:500}');a.appendChild(n),document.head.appendChild(a);var i={openGmail:function(e,t,o,a,n){var i="https://mail.google.com/mail/u/0/?view=cm&source=mailto&to="+encodeURIComponent(e);t&&(i=i.concat("&cc="+encodeURIComponent(t))),o&&(i=i.concat("&bcc="+encodeURIComponent(o))),a&&(i=i.concat("&subject="+a)),n&&(i=i.concat("&body="+n)),window.open(i,"_blank")},openOutlook:function(e,t,o){var a="https://outlook.live.com/owa/?path=/mail/action/compose&to="+encodeURIComponent(e);t&&(a=a.concat("&subject="+t)),o&&(a=a.concat("&body="+o)),window.open(a,"_blank")},openDefault:function(e){p(e)},copy:function(e,t){b(e),t.textContent="copied",setTimeout(function(){return t.textContent="copy"},999)}},l=function(e,t,o,a,n,l,d){if(m())switch(event.keyCode){case 27:r();break;case 71:i.openGmail(e,t,o,a,n);break;case 79:i.openOutlook(e,a,n);break;case 32:case 13:i.openDefault(l);break;case 67:i.copy(e,d);break;default:return}};document.addEventListener("DOMContentLoaded",function(){var e=document.createElement("div");e.id="mailgo",e.classList.add("mailgo-modal"),e.style.display="none";var t=document.createElement("div");t.className="mailgo-modal-background",e.appendChild(t);var o=document.createElement("div");o.className="mailgo-modal-content",e.appendChild(o);var a=document.createElement("strong");a.id="mailgo-title",a.className="mailgo-title",o.appendChild(a);var n=document.createElement("div");n.id="mailgo-details",n.className="mailgo-details";var i=document.createElement("p");i.id="mailgo-cc";var l=document.createElement("span");l.className="mailgo-weight-500";var d=document.createTextNode("cc ");l.appendChild(d);var c=document.createElement("span");c.id="mailgo-cc-value",i.appendChild(l),i.appendChild(c),n.appendChild(i);var m=document.createElement("p");m.id="mailgo-bcc";var p=document.createElement("span");p.className="mailgo-weight-500";var s=document.createTextNode("bcc ");p.appendChild(s);var u=document.createElement("span");u.id="mailgo-bcc-value",m.appendChild(p),m.appendChild(u),n.appendChild(m);var g=document.createElement("p");g.id="mailgo-subject";var f=document.createElement("span");f.className="mailgo-weight-500";var b=document.createTextNode("subject ");f.appendChild(b);var h=document.createElement("span");h.id="mailgo-subject-value",g.appendChild(f),g.appendChild(h),n.appendChild(g);var v=document.createElement("p");v.id="mailgo-body";var y=document.createElement("span");y.className="mailgo-weight-500";var x=document.createTextNode("body ");y.appendChild(x);var C=document.createElement("span");C.id="mailgo-body-value",v.appendChild(y),v.appendChild(C),n.appendChild(v),o.appendChild(n);var k=document.createElement("a");k.id="mailgo-gmail",k.href="#mailgo-gmail",k.classList.add("mailgo-open"),k.classList.add("mailgo-gmail");var w=document.createTextNode("open in ");k.appendChild(w);var E=document.createElement("span");E.className="mailgo-weight-500";var L=document.createTextNode("Gmail");E.appendChild(L),k.appendChild(E),o.appendChild(k);var j=document.createElement("a");j.id="mailgo-outlook",j.href="#mailgo-outlook",j.classList.add("mailgo-open"),j.classList.add("mailgo-outlook");var N=document.createTextNode("open in ");j.appendChild(N);var T=document.createElement("span");T.className="mailgo-weight-500";var A=document.createTextNode("Outlook");T.appendChild(A),j.appendChild(T),o.appendChild(j);var S=document.createElement("a");S.id="mailgo-open",S.href="#mailgo-open",S.classList.add("mailgo-open"),S.classList.add("mailgo-default");var R=document.createElement("span");R.className="mailgo-weight-500";var O=document.createTextNode("open");R.appendChild(O);var U=document.createTextNode(" default");S.appendChild(R),S.appendChild(U),o.appendChild(S);var z=document.createElement("a");z.id="mailgo-copy",z.href="#mailgo-copy",z.classList.add("mailgo-copy"),z.classList.add("mailgo-weight-500");var I=document.createTextNode("copy");z.appendChild(I),o.appendChild(z);var M=document.createElement("a");M.href="https://mailgo.js.org?ref=mailgo-modal",M.className="mailgo-by",M.target="_blank",M.rel="noopener noreferrer";var _=document.createTextNode("mailgo.js.org");M.appendChild(_),o.appendChild(M),document.body.appendChild(e),t.addEventListener("click",r)}),document.addEventListener("click",function(e){if(document.contains(u("mailgo"))){var t=e.path||e.composedPath&&e.composedPath()||g(e.target);t&&t.forEach(function(t){if(function(e){return 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 function(e){var t="",o="",a="",n="",d="",r="";if(e.href&&e.href.toLowerCase().startsWith("mailto:")){o=decodeURIComponent(e.href.split("?")[0].split("mailto:")[1].trim()),t=new URL(e.href);var m=new URLSearchParams(t.search);a=m.get("cc"),n=m.get("bcc"),d=m.get("subject"),r=m.get("body")}else o=e.getAttribute("data-address")+"@"+e.getAttribute("data-domain"),t=new URL("mailto:"+encodeURIComponent(o)),a=e.getAttribute("data-cc-address")+"@"+e.getAttribute("data-cc-domain"),n=e.getAttribute("data-bcc-address")+"@"+e.getAttribute("data-bcc-domain"),d=e.getAttribute("data-subject"),r=e.getAttribute("data-body");if(f(o.split(","))){a&&!f(a.split(","))&&(a=""),n&&!f(n.split(","))&&(n="");var p=u("mailgo-title"),g=(u("mailgo-details"),u("mailgo-cc")),b=u("mailgo-cc-value"),h=u("mailgo-bcc"),v=u("mailgo-bcc-value"),y=u("mailgo-subject"),x=u("mailgo-subject-value"),C=u("mailgo-body"),k=u("mailgo-body-value"),w=u("mailgo-gmail"),E=u("mailgo-outlook"),L=u("mailgo-open"),j=u("mailgo-copy");p.innerHTML=o.split(",").join("<br/>"),a?(g.style.display="block",b.innerHTML=a.split(",").join("<br/>")):g.style.display="none",n?(h.style.display="block",v.innerHTML=n.split(",").join("<br/>")):h.style.display="none",d?(y.style.display="block",x.textContent=d):y.style.display="none",r?(C.style.display="block",k.textContent=r):C.style.display="none",w.addEventListener("click",function(){return i.openGmail(o,a,n,d,r)}),E.addEventListener("click",function(){return i.openOutlook(o,d,r)});var N=s(o);L.addEventListener("click",function(){return i.openDefault(N)}),j.addEventListener("click",function(){return i.copy(o,j)}),c(),document.addEventListener("keydown",function(){return l(o,a,n,d,r,N,j)})}}(t)})}});var d=function(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)},c=function(){return u("mailgo").style.display="flex"},r=function(){return u("mailgo").style.display="none"},m=function(){return"flex"===u("mailgo").style.display},p=function(e){return window.location.href="mailto:"+atob(e)},s=function(e){return btoa(e)},u=function(e){return document.getElementById(e)},g=function(e){for(var t=[];e;){if(t.push(e),"HTML"===e.tagName)return t.push(document),t.push(window),t;e=e.parentElement}},f=function(e){return e.every(d)},b=function(e){var t=document.createElement("textarea");t.value=e,t.setAttribute("readonly",""),t.style.position="absolute",t.style.left="-9999px",document.body.appendChild(t);var o=0<document.getSelection().rangeCount&&document.getSelection().getRangeAt(0);t.select(),document.execCommand("copy"),document.body.removeChild(t),o&&(document.getSelection().removeAllRanges(),document.getSelection().addRange(o))}}])});