UNPKG

2.58 kBJavaScriptView Raw
1!function(){function t(){return t=Object.assign?Object.assign.bind():function(t){for(var n=1;n<arguments.length;n++){var e=arguments[n];for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r])}return t},t.apply(this,arguments)}!function(){if(window){var n=window,e=n.navigator,r=e.language,i=e.userAgent,o=n.location,a=o.hostname,d=o.pathname,u=o.search,s=o.origin,c=n.document,w=n.history,v=c.querySelector("script[data-site]");if(!v)return console.error("script.js not found");var p=function(t){var n=v&&(v.hasAttribute(t)||v.hasAttribute("data-"+t));return!!n&&(v.getAttribute(t)||v.getAttribute("data-"+t)||n)},l=v.src||"https://buzz.proxima.so",f=function(t){console.warn("Proxima:",t)},h=p("site"),g=p("manual"),b=p("url")||new URL(l).origin,m=p("spa"),y=p("hostname")||a;if(!h)return f("site not found");if(function(t){return/(bot|spider|crawl)/i.test(t)||window._phantom||window.__nightmare||window.navigator.webdriver||window.Cypress}(i))return f("bot detected");if(p("dnt")&&function(){var t=window,n=t.doNotTrack||t.navigator.doNotTrack;return"yes"===n||"1"===n}())return f("dnt and dnt=1");if("visibilityState"in c&&"prerender"===c.visibilityState)return f("Prerendering");var E=function(){f("hashAttached"),window.addEventListener("hashchange",A)},S=function(t,n){f("send");var e=new XMLHttpRequest;e.open("POST",b+t,!0),e.setRequestHeader("Content-Type","text/plain"),e.addEventListener("error",function(){}),e.send(JSON.stringify(n))},x=function(n){var e,i,o;void 0===n&&(n={});var a=c.querySelector("[rel='canonical']");return f("build"),t({p:a?null!=(e=n)&&e.page?null==(i=n)?void 0:i.page:a.getAttribute("href"):s+d+u,v:"1.0.7",s:h,h:y||"",r:null!=(o=n)&&o.referrer?n.referrer:(null==c?void 0:c.referrer)||"",l:r||"",cid:Date.now().toString(32)},n)},A=function(n){void 0===n&&(n={}),f("track"),S("/torch",t({t:"pageview"},x(n)))};window.proxima||(window.proxima={track:A,event:function(n,e,r){void 0===e&&(e={}),void 0===r&&(r={}),n&&(f("event"),S("/torch",t({t:"event",e:n,mt:e},x(r))))}},function(){var t,n,e;if(f("init"),"true"===(null==(t=window)||null==(n=t.localStorage)?void 0:n.proxima_ignore))return console.warn("ignored");if(m&&!g)switch(m){case"off":break;case"hash":E();break;default:void 0!==w?(e=w.pushState,void 0!==w&&(w.pushState=function(){var t=e.apply(w,arguments);return window.dispatchEvent(new Event("pushstate")),window.dispatchEvent(new Event("prxm")),t},window.addEventListener("popstate",function(){window.dispatchEvent(new Event("prxm"))}),window.addEventListener("prxm",A))):E()}g||(f("attach on load"),A())}())}}()}();